package com.simple.cloud.config;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

/**
 * <h3>springcloud</h3>
 * <p></p>
 *
 * @author : 你的名字
 * @date : 2020-05-19 14:52
 **/
@Configuration
public class ConfigBean {
    /**
     * 配置负载均衡实现RestTemplate
     * IRule
     * RoundRobinRule：轮询
     * RandomRule：随机
     * AvailbailityFilteringRule：会先过滤掉，跳闸，访问故障的服务~，对剩下的进行轮询
     * RetryRule：会先按照轮询获取服务~，如果服务获取失败，则会在指定的时间内进行，重试
     */
    @Bean
    @LoadBalanced //Ribbon
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }

//    @Bean
//    public IRule myRule() {
//        return new RandomRule();
//    }
}
